1.7 扩展接口¶
除了上述小节中介绍的BlueFi上的各种硬件设备之外,BlueFi还提供40-Pin扩展接口(见图1-13)来与外部电路进行连接。 与传统的引脚不同的是,40-Pin扩展接口是以导电触片(金手指)的形式与外部电路相连。
图1-13 BlueFi 扩展接口
在40-Pin扩展接口上,总共有5个大的引脚和20个小的引脚。
5个大引脚分别为P0、P1、P2、3V、GND,前三个引脚可以作为触摸输入,后两个引脚可用来为BlueFi供电或通过BlueFi向外部电路供电。 观察40-Pin扩展接口可以发现,在这5个大的引脚的上方有5个小洞,它们的作用是方便我们使用鳄鱼夹或香蕉插头与外部电路连接。
在BlueFi上除了3V和GND引脚外,其余引脚可编程作为ADC、I2C、SPI、PWM等功能使用(详细分类见图1-14)。在图1-14中我们可以发现, 其中部分引脚与板载资源共享,因此不能同时使用这些引脚实现拓展和板载功能。例如按钮A、按钮B分别对应于40-Pin扩展接口上的P5、P11, 我们无法在调用按钮A、B的同时调用P5、P11去接收或输出信号。对于小引脚而言,它很难像大引脚一样用鳄鱼夹或香蕉插头来与外部电路相连, 我们通常使用扩展板来引出小引脚,外部电路通过杜邦线、三芯线等连接线与扩展板上的引脚相连,从而使用BlueFi的小引脚。 与扩展板相关的内容会在第6章“使用microbit扩展板”中讲到。
图1-14 BlueFi 金手指拓展接口
BlueFi的40-Pin扩展接口完全兼容microbit,因此可以使用microbit丰富的周边资源,包括各种扩展板、小车底盘、机器人功能板等硬件资源。 使用40-Pin扩展接口可以帮助我们完成更为复杂的编程实例。
BlueFi上的扩展接口除了40-Pin扩展接口外,还有一个Mini-Grove接口(见图1-13、图1-15),它采用4-Pin防呆连接器,可以有效防止由于正负极接反, 导致接口和电路板电气损坏的情况发生。Mini-Grove接口使用I2C接口标准,其上的4个引脚是从40-Pin扩展接口I2C部分引脚上引出的, 并默认将两个信号线分别定义为I2C的SCL(P19)和SDA(P20)。
图1-15 BlueFi Mini-Grove接口
你或许会问,既然在BlueFi的40-Pin扩展接口上已经有了I2C引脚,为什么还要另外将其引出,作为一个单独的接口使用呢? 首先,I2C普遍应用于计算机系统内部各功能部件之间的互联,现在几乎所有的计算机系统,几乎都采用或支持I2C,I2C的用途广泛。 其次是要使用40-Pin扩展接口上的I2C引脚,需要借助于扩展板,增加了接线的复杂程度,而将其引出作为一个单独的接口,只需一根四芯线 就能完成连线。
Mini-Grove接口以有线连接的形式,可以令BlueFi与其他主机之间按照I2C通讯协议进行数据传输,例如在两块BlueFi之间建立通讯通道。